commonlibsse_ng\re\t\TESObjectWEAP/
critical_data.rs

1use crate::re::SpellItem::SpellItem;
2
3#[commonlibsse_ng_derive_internal::to_bitflags]
4#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
5#[repr(u8)]
6pub enum Flag {
7    None = 0,
8    OnDeath = 1 << 0,
9}
10
11#[repr(C)]
12#[derive(Debug)]
13pub struct CriticalData {
14    pub percentMulti: f32,      // 0x00
15    pub pad04: u32,             // 0x04
16    pub effect: *mut SpellItem, // 0x08
17    pub damage: u16,            // 0x10
18    pub flags: Flag,            // 0x12
19    pub pad13: u8,              // 0x13
20    pub pad14: u32,             // 0x14
21}
22const _: () = assert!(core::mem::size_of::<CriticalData>() == 0x18);